package com.joysuch.wwyt.patrol.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.joysuch.wwyt.patrol.entity.PatrolRecordItem;
import com.joysuch.wwyt.patrol.entity.dto.ItemCheckResultDto;
import com.joysuch.wwyt.patrol.entity.dto.TaskRecordItemDto;
import com.joysuch.wwyt.patrol.entity.vo.WebTaskRecordDeviceVo;
import com.joysuch.wwyt.patrol.entity.vo.WebTaskRecordItemVo;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author heqifeng
 * @since 2022-03-03
 */
public interface PatrolRecordItemService extends IService<PatrolRecordItem> {

    void repair(Long id);

    void repairFinish(Long id);

    List<WebTaskRecordItemVo> getExceptItemByTask(Long taskId);

    List<WebTaskRecordDeviceVo> getExceptItemByRecord(Long recordId);

    Page<TaskRecordItemDto> getLastTaskRecordItemByTaskId(Integer pageNo, Integer size, Long planId, String pointName, String deviceNameOrCode);

    Page<TaskRecordItemDto> getTaskRecordItem(Page<TaskRecordItemDto> page, Long taskId, String pointName, String deviceNameOrCode);

    List<ItemCheckResultDto> getItemCheckResultByTaskAndCkProject(List<Long> taskIds, List<Long> ckProjectIds);

    List<TaskRecordItemDto> findWfRecordItemList();

    boolean updateWfRecordItemById(String status,String exceptHandel, Long id);

    void repairNewWf(Long itemId, String wfProcessInsId, String wfProcessStatus);

    void updatePatrol(Long id, String state);

}
